import axios from 'axios'
import Message from 'ant-design-vue/lib/message/index'

const instance = axios.create({
    timeout: 10000,
    responseType: 'json',
    responseEncoding: 'utf8',
    maxContentLength: 2000000,
    // `transformResponse` 在传递给 then/catch 前，允许修改响应数据
    transformResponse: [function (data) {
        // 对 data 进行任意转换处理
        return data;
    }],
});
instance.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    return config;
  }, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
});

// 添加响应拦截器
instance.interceptors.response.use(function (response) {
    // 对响应数据做点什么
    switch(response.status){
        case 200:
            if(response.data.code==500){
              Message.error(response.data.msg);
              return Promise.reject();
            }
            return Promise.resolve(response.data);
        default:
            return response;
    }
  }, function (error) {
    // 对响应错误做点什么
    return Promise.reject(error);
});

export default instance;